Color digital cameras are becoming ubiquitous in the consumer marketplace, partly due to progressive price reductions. Color digital cameras typically employ a single optical sensor, either a Charge Coupled Device (CCD) sensor or a Complementary Metal Oxide Semiconductor (CMOS) sensor, to digitally capture a scene of interest. Both CCD and CMOS sensors are only sensitive to illumination. Consequently, these sensors cannot discriminate between different colors. In order to achieve color discrimination, a color filtering technique is applied to separate light in terms of base colors, typically red, green and blue.
A common filtering technique utilizes a color-filter array (CFA), which is overlaid on a sensor array, to separate colors of impinging light in a Bayer pattern. The Bayer pattern is a periodic pattern with a period of two different color pixels in each dimension (vertical and horizontal). In the horizontal direction, a single period includes either a green pixel and a red pixel, or a blue pixel and a green pixel. In the vertical direction, a single period includes either a green pixel and a blue pixel, or a red pixel and a green pixel. Therefore, the number of green pixels is twice the number of red or blue pixels. The reason for the disparity in the number of green pixels is because the human eye is not equally sensitive to all three primary colors. Consequently, more green pixels are needed to create a color image of a scene that will be perceived as a “true color” image.
Due to the CFA, the image captured by the sensor is therefore a mosaiced image, also called “raw data” image, where each pixel only holds the value for either red, green or blue. The raw data image can then be demosaiced to create a color image by estimating the actual color value, the combination of red, green and blue, for each pixel of the image. The color value of a pixel is estimated by using color information from surrounding pixels.
There are a number of conventional demosaicing methods to convert a raw data image into a color image. Three main common categories of demosaicing methods include interpolation-based methods, feature-based methods, and Bayesian methods. The interpolation-based demosaicing methods use simple interpolation formulas to interpolate the color planes separately. The interpolation-based demosaicing methods include bi-linear methods, band-limited interpolation methods using sinc( ) functions, spline interpolation methods, and the like. The feature-based demosaicing methods examine local features of a given image at the pixel level, and then interpolate the image accordingly. The basic idea of the feature-based methods is to avoid interpolating across edges of features. The Bayesian methods attempt to find the most probable color image, given the data, by assuming some prior knowledge of the image structure.
After the raw data image has been demosaiced, the image is usually processed through a color-conversion operation and tone mapping, which are part of the image pipe-line. The resulting image is then typically stored in the camera using some sort of image compression, such as JPEG or JPEG-like compression schemes, to reduce the size of the image file. Therefore, the digital image that is eventually downloaded from the digital camera by the user is usually a compressed image file.
Since the compression process is performed subsequent to the demosaicing process, some image enhancements achieved as a result of the demosaicing process may be significantly reduced or completely off-set by the compression process. As an example, the demosaicing process may create/predict high frequency components in the signal to produce a sharper image. However, the compression process may eliminate or reduce high frequency components of the input image due to the use of quantizers. Therefore, any advantage gained in the demosaicing process may be negated by the compression process.
In view of the above concern, there is a need for a system and method for efficiently processing digitally captured images such that the demosaicing process complements the subsequent compression process.